package work2345;

import java.util.Arrays;

/**
 * 定义MyStack<E>类，用于实现栈。主要功能有：
 */
public class MyStacr<E> {
    //E[] es=new E[10];
    Object[] o=new Object[10];

    int usedsize =0;
    public boolean push(Object e){//添加
        if(usedsize >=o.length){
            o= Arrays.copyOf(o,o.length+o.length/2);//数组满了,就扩容1.5倍
        }
        o[usedsize]=e;//添加
        usedsize++;
        return true;
    }
    //查看堆栈顶部的对象，但不从堆栈中移除它
    public E peek(){
        return (E)o[usedsize-1];//usedsize不变即可
    }
//boolean empty()：测试堆栈是否为空。
    public boolean empty(){
        if(usedsize<=0){//元素为0,即为空
            return true;
        }else {
            return false;
        }
    }
    //删除此堆栈顶部的对象，并将该对象作为此函数的值返回。
    public E pop(){
        return (E)o[--usedsize];//先--再使用
    }



    public static void main(String[] args) {
        Object[] o=new Object[10];

        System.out.println(1.5*o.length);
    }


}
